//引入第三方包 express
var express = require('express')
//引入第三方包 express-jwt
var { expressjwt } = require('express-jwt')

//实例化 express
var app = express()


//设置静态托管
//app.use() 注册中间件
//express.static() experess 内置的一个静态资源托管中间件
app.use(express.static('static'))

//在所有接口前设置 处理post请求参数的中间件
app.use(express.json())
app.use(express.urlencoded({ extended: false }))


//设置token验证的中间件
//unless 设置白名单，白名单中的接口都可以免除验证
app.use(expressjwt({
    secret: '1234',          //密钥
    algorithms: ['HS256']    //算法
}).unless({ path: ['/user/login', '/user/register'] }))


//导入拆分出去的子路由
var userRouter = require('./router/userRouter')
var goodRouter = require('./router/goodRouter')


//注册子路由，但凡是'/user'开头的请求，都找userRouter这个子路由来提供服务
app.use('/user', userRouter)
app.use('/good', goodRouter)

//主路由，代码会越写越多，难以管理
// app.get('/login',(req,res)=>{
// })
// app.get('/list',(req,res)=>{
// })

//设置监听
app.listen(8080, () => {
    console.log('服务端运行在:http://localhost:8080');
})